package com.zhiwei.msf.gateway.service;

import com.zhiwei.msf.common.dto.PageDataDto;
import com.zhiwei.msf.gateway.dao.entity.UserInfo;
import com.zhiwei.msf.gateway.dto.QueryUserInfoDto;

/**
 * function: 用户服务
 * author: zhiwei_yang
 * time: 2020/2/12-15:53
 */
public interface UserInfoService {

    /**
     * 获取默认用户信息
     *
     * @return
     */
    UserInfo getDefaultUserInfo();

    /**
     * 通过用户名查询用户信息
     *
     * @param username
     * @return
     */
    UserInfo getUserInfoByName(String username);

    /**
     * 创建用户
     *
     * @param userInfo
     * @return
     */
    boolean addUser(UserInfo userInfo);


    /**
     * 更新用户
     *
     * @param userInfo
     * @return
     */
    boolean updateUser(UserInfo userInfo);

    /**
     * 删除用户
     *
     * @param userId
     * @return
     */
    boolean deleteUser(String userId);

    /**
     * 查询用户信息
     *
     * @return
     */
    PageDataDto<UserInfo> search(QueryUserInfoDto queryUserInfoDto);
}